package engine.objects ; 

import java.util.ArrayList;

public final class ObjectInspector {
	
	public static boolean isInstance(Object o, Class<?> clazz){
		return (clazz.isInstance(o)) ;
	}
	
	public static boolean hasInstance(ArrayList<Object> o, Class<?> clazz){
		for(Object o1: o)
			if(isInstance(o1, clazz)) return true ; 
		return false ; 
	}

	public static boolean hasInstance(Object[] o, Class<?> clazz){
		for(Object o1: o)
			if(isInstance(o1, clazz)) return true ; 
		return false ; 
	}
	
	public static Object getInstance(Object o, Class<?> clazz){
		if(isInstance(o, clazz))
			return clazz.cast(o); 
		return null ; 
	}
	
	public static Object getFirstInstance(ArrayList<Object> o, Class<?> clazz){
		for(Object o1: o)
			if(isInstance(o1, clazz))
				return getInstance(o, clazz); 
		return null ; 
	}
	
}